home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / UTIL / MEMORY / OLD / MEM208SRC / !Memphis / s / templates < prev   
Text File  |  1993-07-06  |  2KB  |  76 lines

  1. ; > s.templates
  2. ;
  3. ; Description   ObjAsm source code for template code/data for MemFSFiler
  4. ; Author        Nick Smith
  5. ; Version       0.02
  6. ; Date          6th July 1993
  7. ; Copyright     (c) Nick Smith, 1993
  8.  
  9. ; *** Assembler directives
  10.  
  11.         GET     hdr.regs              ; GET register definitions
  12.         GET     hdr.swis
  13.         GET     s.Macros
  14.  
  15. ; Area name C$$code advisable as wanted to link with C output
  16.  
  17.         AREA |C$$code|, CODE, READONLY
  18.  
  19.         IMPORT  |x$stack_overflow|
  20.         EXPORT  |service_resourcefsstarting|
  21.         EXPORT  |templates_data|
  22.         EXPORT  |resource_registerfiles|
  23.         EXPORT  |resource_deregisterfiles|
  24.  
  25. ; The following bytes contain the name of the following procedure to
  26. ; make stack backtracing work, eg. when an address exception occurs!
  27.  
  28.         =       "service_resourcefsstarting", 0         ; Align
  29.         ALIGN
  30.         DCD     &ff00001C
  31.  
  32. |service_resourcefsstarting|
  33.         STMFD   sp!, {r0,lr}
  34.         ADR     r0, templates_data
  35.         MOV     lr, pc
  36.         MOV     pc, r2
  37.         LDMFD   sp!, {r0, pc}^
  38.  
  39.         =       "resource_registerfiles", 0        ; Align
  40.         ALIGN
  41.         DCD     &ff000018
  42.  
  43. |resource_registerfiles|
  44.         MOV     ip, sp
  45.         STMFD   sp!, {a1,fp,ip,lr,pc}
  46.         SUB     fp, ip, #4
  47.         CMPS    sp, sl
  48.         BLLT    |x$stack_overflow|
  49.         ADR     r0, templates_data
  50.         SWI     XResourceFS_RegisterFiles
  51.         LDMEA   fp, {fp,sp,pc}^
  52.  
  53.         =       "resource_deregisterfiles", 0           ; Align
  54.         ALIGN
  55.         DCD     &ff00001C
  56.  
  57. |resource_deregisterfiles|
  58.         MOV     ip, sp
  59.         STMFD   sp!, {a1,fp,ip,lr,pc}
  60.         SUB     fp, ip, #4
  61.         CMPS    sp, sl
  62.         BLLT    |x$stack_overflow|
  63.         ADR     r0, templates_data
  64.         SWI     XResourceFS_DeregisterFiles
  65.         LDMEA   fp, {fp,sp,pc}^
  66.  
  67. ; ResourceFS data block for Templates file
  68.  
  69. ;        AREA |C$$data|, DATA
  70. |templates_data|
  71.         ResourceFile "Resources.Templates", "Resources.Memphis.Templates"
  72.         ResourceFile "Resources.Template3D", "Resources.Memphis.Template3D"
  73.         DCD     0               ; Terminator
  74.  
  75.         END
  76.